This invention relates to the processing of unscheduled events by a data processing system and more particularly, to a telephone call center management system which can download and process call lists and call records in real time.
Telephony call centers which place outbound calls and receive inbound calls typically utilize a telephone call center management system to help automate much of the process. Agents with headsets and terminals converse with calling and called parties, while automatic phone dialers dial phone numbers and route connected calls to the agents. The telephone call center management system controls, among other functions, the dialing of outbound telephone numbers from a predefined, sorted customer call list having a number of customer call records within each customer call list. These customer call lists are usually downloaded from a call record source, such as a host computer, to the telephony call center management system only once during a twenty-four hour period, often during the non-busy early hours of the morning. Individual records from the customer call list[s] are then grouped and processed during the day as call campaigns. A call campaign comprises a collection of group customer call records generally having one or more common attributes. A telephony call center can generally run several call campaigns simultaneously.
A typical use of a telephony call center is to initiate a call campaign to contact a predefined group or segment of customers or potential customers that have a common attribute such as credit card accounts with payments overdue by 60 days. The user can instruct a record source, such as a host computer containing a credit card account database, to sort through that database and select the overdue credit card accounts. The host computer then downloads the overdue credit card account records as one or more call lists to the telephone call center management system. This is often referred to as batch processing.
The telephone call center management system then processes the call list as a call campaign by automatically dialing customer credit card account telephone numbers included within the call record, and connecting answered calls to agents. The agents can then converse with the called parties and attempt to reconcile the overdue accounts. Agents record the results of the reconciliation on agent terminals. At the end of the day, the customer call list with the results of the phone calls are uploaded back to the host computer database for storage and future reference.
This batch processing approach does not allow for any dynamic changes that can occur to the customer call lists during the day. In the prior art systems, the call lists are downloaded from the source such as a host computer, the call lists cannot be changed. Any updates to the call record source will not be included until the next download. For example, if a customer payment arrives for their account and the call record is modified to reflect the payment, it is not possible to update the running call list so that customer is not called that day. The customer is called anyway, potentially creating poor relations with the customer, and a waste of time for the agent and the telephony call center.
Telephony call centers which process incoming calls exacerbates this problem. The purpose of the incoming calls can not always be anticipated. For example, if a caller simply wants to check on an account balance, the handling agent can usually call up the account balance to the agent terminal while the customer is on the line. But there are many incoming calls that can not be handled without calling the person back. For example, a customer may call and want to talk to a specific agent. If the requested agent is busy, the call may be unconnectable, or the caller must wait on hold for an indefinite period.
Another choice would be to call the customer back when the preferred agent is available. In present telephony call center management systems, the agent handling the call must manually inform the preferred agent to call the customer back. This defeats the purpose of having automatic phone dialers and pacers. There is a need for a telephone call center management system to be able to schedule a callback to automatically dial and connect the preferred agent to the customer when the preferred agent is available.
Another example is a telephony call center for handling an emergency xe2x80x9c911xe2x80x9d calls for a community. 911 numbers are meant to be used for emergency calls requesting immediate assistance. But in practice, a majority of the calls are not for emergency situations. These non-emergency calls range from requests for information, to complaints, to lonely individuals wanting to talk to someone. Emergency dispatch personnel must rate the importance of a deluge of incoming calls, and handle the true emergency calls immediately.
One method of handling non-emergency calls is to get the caller""s name, number, and problem, and have secondary support personnel call them back and help with their problem. While 911 numbers are staffed 24 hours a day, secondary support personnel may not be available 24 hours a day. These support personnel may work only day shifts, or they may need to research an answer to a caller""s request. In either case, it may be several hours before a support personnel can return the call.
When support personnel do call back, they must manually dial the phone number and wait to reach the person. This is an inefficient use of support personnel. A telephone call center management system to help automate this process would be very helpful. Emergency dispatch personnel could enter the non-emergency call information on their agent workstation or transfer the call to a voice response unit which will record the caller""s telephone number for a call back. The system would then queue the call records so when a support personnel (agent) becomes available to handle calls, (even if it is many hours later) the telephone call center management system would automatically dial the caller, and if the call was answered, connect the person to a support personnel.
A telephone call center management system to solve these problems must be able to download updated call records on a real time basis. Batch processing of call lists alone will not work.
Accordingly, what is needed is a telephone call center management system which can continuously download and update call records, call lists and call record information on a real time basis.
The present invention provides a system and method for handling unscheduled events that require a change in a predetermined ordered list of scheduled tasks. An ordered list of scheduled tasks is produced, and processing of the tasks commences. When an unscheduled event occurs, the event is detected, and a predetermined task is selected in response to the event. The predetermined task is integrated into the ordered list of scheduled tasks to allow the predetermined task for the unscheduled event to be performed along with the ordered list of scheduled tasks.
This invention can be used in any task processing system, including a telephony call center, to allow real-time call record updating and processing. In a telephone call center management system, a telephony resource server is coupled to an outbound campaign manager which is responsive to a call table manager. The outbound campaign manager controls at least outbound call activities of the telephony resource server. A call record feed server is also coupled to the outbound campaign manager, and to at least one call record table, for retrieving call records from the call record table and for providing retrieved call records to the outbound campaign manager. A real-time call record server is coupled to the call table manager, and is responsive to a source of real-time call records to be handled. The real-time call record server receives the call records and places them in at least one call table.
To obtain and process call records, the outbound campaign manager can respond to notification by the call record feed server that at least one call record is in a call table. Alternatively, the outbound campaign manager can request call records using some other initiative, such as periodic time intervals.